import { createVM, show, hide } from './util'

let $vm

// 用法示例
// this.$alert.show({
//   title: '提示',
//   text: "该业务仅支持微信小程序办理，请复制链接至手机微信内打开继续办理。",
//   confirmText: "复制连接",
//   type: "tip",
//   copyText: businessUrl,
//   onHide: () => {
//   }
//   hasCancel: true, // 有取消时必选。
//   cancel: () => {},
//   confirm: () => {}
// });

const plugin = {
  install (Vue) {
    if (!$vm) {
      $vm = createVM(Vue)
    }

    const alert = {
      show (options = {}) {
        return show.call(this, $vm, options)
      },
      hide () {
        return hide.call(this, $vm)
      }
    }
    Vue.$alert = Vue.prototype.$alert = alert
  }
}

export default plugin
export const install = plugin.install
